package co.edu.javeriana.konigsberg.xavier.gui.bean;


import java.math.BigInteger;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import co.edu.javeriana.konigsberg.xavier.dto.CategoriaDTO;
import co.edu.javeriana.konigsberg.xavier.servicio.CategoriaServicioLocal;

@ManagedBean(name="categoriaBean")
@SessionScoped
public class CategoriaBean extends ManagerBean{
	private static final long serialVersionUID = 1L;
	
	@EJB
	private CategoriaServicioLocal categoriaServicio;
	
	private Map<String,BigInteger> categorias;

	private BigInteger idCategoria;
	
	@PostConstruct
	public void init(){
		//categoriaServicios = new CategoriaServicios();
	}
	
	public Map<String, BigInteger> getCategorias() {
		if(categorias == null){
			categorias = new HashMap<String, BigInteger>();
			List<CategoriaDTO> categoriaDTOs = categoriaServicio.obtenerLista();
			for (CategoriaDTO categoriaDTO : categoriaDTOs) {
				categorias.put(categoriaDTO.getNombreCategoria(), categoriaDTO.getIdCategoria());
			}
		}
		return categorias;
	}
	public void setCategorias(Map<String, BigInteger> categorias) {
		this.categorias = categorias;
	}

	public BigInteger getIdCategoria() {
		return idCategoria;
	}

	public void setIdCategoria(BigInteger idCategoria) {
		this.idCategoria = idCategoria;
	}	
	
	public CategoriaDTO obtenerSeleccionado(){
		return categoriaServicio.obtenerCategoriasPorId(getIdCategoria());
	}
}
